There are business processes wherein a worker needs to access data (also referred to as “structured data”) and documents (also referred to as “unstructured data” and as “content”) that are generated by a variety of different enterprise systems and stored in a variety of different data stores in order to perform some task that is consistent with their functional role in the organization. For example, a customer service representative would need access to a wide range of documents that originate from many different departments in order to perform the function of researching and responding to a customer inquiry.
It is common to find that the various different organizational units, hereafter described as “departments”, in an organization—such as a for-profit company or a not-for-profit organization or the agencies comprising a government body—each develops its own system for creating and maintaining the documents that are produced by the department's processes. Many of these documents are required for efficient operation of another department's processes; however the department may lack an effective means for sharing those documents with other departments. For example, the department may lack awareness of the fact that another department has a need to use its documents in their process. This situation is frequently referred to as having “information silos” because the information content is stored in a manner that makes it difficult or impossible for other departments to find out what is stored. Even if the department is aware of the need for the documents of another department, the systems may lack interoperability, making it inefficient or, in some cases, impossible to access the documents directly from the processes in which they are needed.
Referring to the earlier example, in response to such an organization, each customer service representative could go into each of the different enterprise systems, or silos, separately in order to look up the data or search for the documents based on the parameters of the inquiry. However, this method would be very time consuming and would result in low user satisfaction and long turn-around times on the response to the inquiry.
Structured data can be organized in an Enterprise Resource Planning (ERP) system, so that individuals can easily access data originating from one process in other processes. However, ERP systems are not as effective in organizing the unstructured content data associated with the processes, especially if it is not directly linked to the structured data within the ERP system. For example, some of the unstructured content data may be created by processes that are outside of the control of the ERP system.
Documents can be organized in a shared file system or in a document management system so that individuals can easily access documents from any process. These file sharing methods only provide a partial solution to the problem stated above, because the information may not be organized in a manner that makes it possible to locate the correct data or document in a specific process step. Or, the method of looking up the data or documents may return so many candidates that it overwhelms the user who is trying to solve a specific problem.
A federated query system can be developed so that a search can be performed on each the different enterprise systems and the combined search results displayed for the user. The resulting display is, however, generic because they return results based on keywords and not context-specific results that would require additional data elements and their correlation to the query and, therefore, it is difficult for the business worker to understand the context of each search hit in order to focus attention on the data which is relevant to the problem at hand.
Methods for writing a software application may be specific to a business process and that presents the appropriate information from each separate enterprise system in a user interface that is optimized to the business process. It is expensive, however, to develop such a software application for each and every possible combination of business scenario and the different enterprise systems needed. It is even more expensive to develop such a software application for each of the many different application environments that may be needed for various business workers—for example, there may be a need for such software written for desktop applications, web-based applications, portal frameworks, and so forth. Furthermore, having developed such a software application, it is difficult and expensive to keep the application up to date whenever any of the other departments changes their process or the types and organization of their information content.
There are methods for creating a configuration utility in a given application environment that allows a business analyst to configure a presentation screen in that application environment by allowing the analyst to select from various metadata fields and choose the ones that are to be displayed in the presentation screen. An example of such a configuration utility is the DocuLink customizing screen that is available in the Open Text DocuLink application written in ABAP and presented to the user in the SAP(r) SAPGUI application environment. It is expensive, time-consuming, and inefficient, however, to develop and support such a configuration utility for each and every application environment such as the ones that were listed above.
Therefore, there is a need for a system and method that enables the set of software applications developed for different departmental processes to manage their information content in a consistent and structured manner and that is easy for business analysts to incorporate into systems that they design in order for the needed content to flow from the process of one department to those of other departments without having to hard-code content management logic into each and every application.